Evolution of computer science and the most prominent trends for future research in the field

While computer science only emerged as a distinct academic discipline in 1950s, the key ideas behind it date back to centuries before the first computer science degree was awarded. What were the key developments in computer science until today, and what trends are shaping up to be the most prominent in the future? This article provides a brief overview of the history of computer science and computer science domains that researchers are likely to focus in the next decade.

History of computer science

Before 1900

In its essence, computer science deals with the use of machines that facilitate computation. Mechanical devices that help calculation have been in use for thousands of years, starting from the abacus which has existed for at least 4,000 years. Over the centuries, people have developed sophisticated analog designs such as the Antikythera mechanism used in ancient Greece to aid computation. Notable inventions from early modern Europe include Napier’s rods (c. 1610) that simplified the task of multiplication, Pascal’s mechanical adding machine (1641), and mechanical calculator of Leibniz (1694).

The general idea permeating computer science, namely representing complicated patterns and problems with the use of automated machines, was embraced by Charles Babbage (1791-1871) who designed two devices: the Difference Engine and the Analytical Engine. Ada Lovelace (1815-1827), who worked on the Analytical Engine and is viewed as the first computer programmer, recognised the potential of using such machines beyond simple calculations.

Hollerith’s tabulating machine designed to help tabulate the 1890 US census. From https://www.ibm.com/ibm/history/ibm100/us/en/icons/tabulator/.

While Babbage’s devices did not yield satisfactory results, later inventions such as Jevons’s machine (1869) and Hollerith’s (1889) tabulating machine successfully solved complicated problems that would be solved much more slowly without machines’ aid. With engineering seeing major advances, the ideas behind these early designs will continue to influence researchers for decades.

1900-1950

Early on, engineers and inventors were restricted to building special-purpose mechanical devices. For example, Carissan’s factoring machine (1919) was designed to test integers for primality and factor composite integers. In 1928, David Hilbert, an influential German mathematician, posed several questions on the foundations of mathematics, including the so-called Entscheidungsproblem (the ‘decision problem’) which asked if mathematics was decidable – that is, is there a mechanical method for deciding the truth of a mathematical statement? The decision problem was answered in 1936 by Alan Turing who constructed a formal model of a computer, the so-called Turing machine.

Universal Turing machine (UTM). From https://web.mit.edu/manoli/turing/www/turing.html

The construction demonstrated that there were problems that a machine would not be able to solve, such as the "halting problem" of showing if a program would finish running for a given input.

In 1940s, the development of computer science was heavily influenced by World War II. Ballistics computations accelerated the development of general-purpose electronic digital computers such as Harvard Mark I (1944), an electromechanical computer in part inspired by Babbage’s Analytical Engine, and programmable ENIAC (1945), initially designed by Mauchly and Eckert for artillery calculations. Another wartime influence on computer science took the form of computational projects related to military code-breaking. The Bombe electromechanical device and the Colossus computer were used by Alan Turing and other researchers in the cryptanalysis of the German army’s Lorenz cipher and the Enigma device.

1950-1980

For the following years, the evolution of computer science was guided by engineering inventions such as transistors, magnetic core memory, and integrated circuits. However, many ideas from earlier understanding of computer science are still used in some form in modern computers. For example, ENIAC’s successor, EDVAC (1949), included von Neumann’s mergesort routine. While most of computers were not reprogrammable, Wilkes’s EDSAC (1949) was among the first stored-program digital computers. The invention of a compiler (1951) and languages such as FORT


Online class and exam help

Struggling with online classes or exams? Get expert help to ace your coursework, assignments, and tests stress-free!